#pragma once
#include <string>
class ApplicationBase {
public:
    virtual ~ApplicationBase() = default;
    virtual bool initialize() = 0;
    virtual void processInput() = 0;
    virtual void update(float deltaTime) = 0;
    virtual void render() = 0;
    virtual void shutdown() = 0;
    virtual std::string getName() const = 0;
public:
    void setQuit() { isQuit = true; }
    bool isRun() { return isQuit; }
private:
    bool isQuit = false;
};